package com.haiyou.common.util.account;

import org.springframework.util.StringUtils;

import com.haiyou.common.constants.sdk.AccountConstants;
import com.haiyou.common.util.string.RegexUtils;
import com.vdurmont.emoji.EmojiManager;

/**
 * 
 * @Description: 账号校验 工具类
 * @author hong
 * @date 2024年13月11日 下午7:02:52
 */
public class UidUtils {
	/**
	 * 账号判断
	 * 
	 * @return
	 */
	public static boolean usernameCheck(String str) {

		if (!StringUtils.hasLength(str)) {
			return false;
		}

		if (AccountConstants.username_length_min > str.length()) {
			return false;
		}

		if (AccountConstants.username_length_max < str.length()) {
			return false;
		}

		// 账号不能包含中中文
		if (RegexUtils.isContain(str, RegexUtils.chineseRegex)) {
			return false;
		}

		// 账号不能包含特殊字符串
		if (RegexUtils.isContain(str, RegexUtils.specRegex)) {
			return false;
		}

		// 判断是否存在表情符
		if (EmojiManager.containsEmoji(str)) {
			return false;
		}

		return true;
	}
}
